﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Xml.Serialization;

namespace LdtJudge.DataEngine.Model.XMLConfigModel.SituationPloModel
{
    [Serializable]
    [XmlRootAttribute("详情", IsNullable = false)]
    public class SituationModel
    {
        /// <summary>
        /// 姓名或名称
        /// </summary>
        [XmlAttribute("姓名或名称")]
        public string Name { get; set; }
        [XmlAttribute("诉讼地位")]
        public string suitID { get; set; }
        [XmlAttribute("id")]
        public string Id { get; set; }

        /// <summary>
        /// 主张方姓名
        /// </summary>
        [XmlIgnore]
        public string zzf_name { get; set; }

        /// <summary>
        /// 主张方诉讼地位
        /// </summary>
        [XmlIgnore]
        public string zzf_suitid { get; set; }
        /// <summary>
        /// 情形信息
        /// </summary>
        [XmlElementAttribute("情形信息")]
        public List<Situation> situationList = new List<Situation>();

        /// <summary>
        /// 情节信息
        /// </summary>
        [XmlElementAttribute("情节信息")]
        public List<PlotModel> plotModelList = new List<PlotModel>();
     

    }
   
    
    /// <summary>
    /// 情形情节信息/详情/情形信息
    /// </summary>
    public class Situation
    {
        [XmlAttribute("id")]
        public string Id { get; set; }

        /// <summary>
        /// 组合表述ID
        /// </summary>
        [XmlAttribute("组合表述ID")]
        public string Ewid { get; set; }
        /// <summary>
        /// 组合情形ID
        /// </summary>
        [XmlAttribute("组合情形ID")]
        public string SituationID { get; set; }

        [XmlAttribute("罪名ID")]
        public string zmid { get; set; }

        [XmlAttribute("罪名原文")]
        public string orgtext { get; set; }

        /// <summary>
        /// 情形情节信息/详情/情形信息/详情
        /// </summary>
        [XmlElementAttribute("详情")]
        public List<SituationDetil> situationList = new List<SituationDetil>();
    
    }

    /// <summary>
    /// 情形情节信息/详情/情形信息/详情
    /// </summary>
    public class SituationDetil
    {
        [XmlAttribute("id")]
        public string Id { get; set; }
        [XmlAttribute("情形ID")]
        public string SituationID { get; set; }

        [XmlAttribute("情形名称")]
        public string SituationName { get; set; }

        [XmlAttribute("情形来源")]
        public string Qxly { get; set; }

        [XmlAttribute("情形认定意见结果")]
        public string Qxrdjg { get; set; }
        /// <summary>
        /// 情形情节信息
        /// </summary>
        [XmlIgnore]
        public int LyNumber { get; set; }

        [XmlElementAttribute("原文")]
        public List<SituationDetilOrgtext> situationOrgtextList { get; set; }


    }

    public class SituationDetilOrgtext {

        [XmlAttribute("原文")]
        public string Orgtext { get; set; }
    }




    /// <summary>
    /// 情节信息
    /// </summary>
    public class PlotModel
    {
        [XmlAttribute("罪名ID")]
        public string zmid { get; set; }

        [XmlAttribute("罪名原文")]
        public string orgtext { get; set; }

        [XmlAttribute("id")]
        public string Id { get; set; }
        [XmlElementAttribute("详情")]
        public List<PlotDetilModel> plotDetilModelList = new List<PlotDetilModel>();
    }
    /// <summary>
    /// 情节信息/详情
    /// </summary>
    public class PlotDetilModel
    {
        [XmlAttribute("id")]
        public string Id { get; set; }
        /// <summary>
        /// 情节信息/详情/情节ID
        /// </summary>
        [XmlAttribute("情节ID")]

        public string PlotID { get; set; }

        [XmlAttribute("情节名称")]
        public string PlotName { get; set; }

        [XmlAttribute("情节来源")]
        public string Qjly { get; set; }

        [XmlAttribute("情节认定意见结果")]
        public string Qjrdjg { get; set; }

        [XmlAttribute("量刑因素种类")]
        public string PoType { get; set; }

        [XmlAttribute("量刑情节种类")]
        public string Influencetypeid { get; set; }

        [XmlAttribute("表述ID")]
        public string ewid { get; set; }


        [XmlElementAttribute("原文")]
        public List<PlotDetilOrgtext> plotOrgtextList { get; set; }

        

        /// <summary>
        /// 情形情节信息
        /// </summary>
        /// 
        [XmlIgnore]
        public int LyNumber { get; set; }
    }

    public class PlotDetilOrgtext
    {
        [XmlAttribute("原文")]
        public string Orgtext { get; set; }
    }

}
